#include <cstdio>
#include <algorithm>
using namespace std;
const int MAXN=2005;
//dp[i][j]表示i张卡分为j本书的情况数
//dp[i][j]=dp[i-1][j-1]+dp[i-1][j];
long long dp[MAXN][MAXN];
void Init(){
    dp[1][1]=1;
    dp[2][1]=1;
    dp[2][2]=1;
    for(int i=3;i<=2000;i++){
        dp[i][1]=1;
        for(int j=2;j<=i;j++){
            dp[i][j]=(dp[i-1][j-1]+dp[i-1][j]*j)%1000;
            //printf("%lld\n",dp[i][j]);
        }
    }
}
int main(void){
    int n;
    int x;
    Init();
    scanf("%d",&n);
    while(n--){
        scanf("%d",&x);
        long long ans=0;
        for(int i=1;i<=x;i++){
            ans=(ans+dp[x][i])%1000;
        }
        printf("%lld\n",ans);
    }
    return 0;
}
